/**
  ******************************************************************************
  * File Name          : sysrtc.c
  * Description        : Code for freertos applications
  ******************************************************************************
  * @attention : 
  *
  ******************************************************************************
  */
#include "bsp.h"
#include <string.h>

Sys_DataTimeStru sys_datatime;

void sys_rtc_init(void)
{
  memset(&sys_datatime, 0, sizeof(sys_datatime));
}

uint8_t sys_check_datatime(const Sys_DataTimeStru *ckdt)
{
  /* year (0~0xFF)+SYS_RTC_YEAR_BASE */
  if(ckdt->year < 0)
  {
    return 1;
  }
  
  if((ckdt->month < 1) || (ckdt->month > 12))
  {
    return 2;
  }
  
  if((ckdt->day < 1) || (ckdt->month > 31))
  {
    return 3;
  }
  
  if(ckdt->hour > 23)
  {
    return 4;
  }
  
  if(ckdt->minute > 59)
  {
    return 5;
  }
  
  if(ckdt->second > 59)
  {
    return 6;
  }
  
  return 0;
}

void sys_set_datatime(const Sys_DataTimeStru *adjust)
{
  if(sys_check_datatime(adjust) == 0)
  {
    sys_datatime = *adjust;
    sys_datatime.effective = 1;
  }
}

void sys_flush_datatime(void)
{
}
